1. Field of the Invention
This invention relates to a program generator, a program convertor and a vehicle control system which uses the generated and converted program, and more particularly to an arrangement enabling a control program whose algorithm has been confirmed through simulation on a large computer to be directly run on a low level computer installed in an automobile.
2 . Description of the Prior Art
The on-board electronic control units (Electronic Control Units) widely used for electronically optimizing vehicle internal combustion engine performance are nowadays generally constituted as microcomputers. A control program is loaded in the ECU prior to its installation so as to enable it to provide optimum control under a broad range of engine operating conditions.
In writing the control program, flow charts are first prepared on the basis of specifications worked out by the engineers and then a large number of programmers convert the flow-charted routines into a program to be run on the ECU microcomputer. Since the number of steps involved in writing a program thus becomes very large, the manpower requirements are considerable and the possibility of human error high. Moreover, while the validity of the control algorithm is experimentally tested at the time of determining the specifications, these checks are not able to go into every aspect of the control algorithm behavior and, as a result, a complete evaluation of the appropriateness of the control algorithm is not possible.
In view of this problem, work has been progressing on the establishment of methods for automatically generating control programs while simultaneously determining the optimum parameters by simulation on a mainframe computer.
The problem with this is that the mainframe used for simulation normally conducts numerical computations using floating point arithmetic, while the microcomputer used in the on-board ECU is only an 8- or 16-bit system incapable of conducting floating point operations at high speed. Loading of a control program generated by a mainframe into the on-board computer (ECU) is therefore not practical because of the long time that would be required for its execution. In addition, although the computation cycle does not necessarily have to be short in simulation, the ECU is required to be capable of relatively short control cycles which can, for example, be completed between successive firings in the engine. Because of this, and also owing to the small memory of the ECU and the low resolution of its A/D converter etc., it is impossible to translate a control program generated by a large computer directly into one that can be used in the on-board computer (ECU). The practice has therefore been to print out the control program generated by the mainframe computer and then to rewrite it for use by the on-board microcomputer (ECU), again requiring the work of a large number of programmers. The result is then loaded into the on-board computer via an assembler, linker or the like. The method thus does little to overcome the drawbacks of earlier ones. It still involves a large number of steps and is highly susceptible to human error.
It is therefore one object of the present invention to provide a program generator which overcomes the aforesaid drawbacks of the prior art by enabling a control program to be created on a mainframe while simultaneously checking the algorithm to be machine-translated as it is with negligible use of manpower and then enabling the translated program to be loaded into an on-board vehicle computer through an assembler or linker.
Another object of the invention is to provide a program generator and convertor which enable a control program created on a mainframe while simultaneously checking the algorithm to be machine-translated, as it is, with negligible use of manpower and then enables the translated program to be loaded into an on-board vehicle computer through an assembler or linker.
Another object of the invention is to provide a vehicle control system able to run the program generated by the aforesaid program generator or program generator and convertor.